package com.tsd.jxc.order.dao;

import com.tsd.core.vo.PageBean;
import com.tsd.jxc.order.entity.JxcOrderAmountDetail;
import com.tsd.jxc.order.entity.JxcOrderAmountDetailExt;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 描述：JxcOrderAmountDetailMapper
 *
 * @author Hillpool
 * @date 2022/11/04 18:01:38
 */
public interface JxcOrderAmountDetailMapper {

    JxcOrderAmountDetail selectByPrimaryKey(Long id);

    JxcOrderAmountDetailExt selectBySid(String sid);

    int deleteByPrimaryKey(Long id);

    int insert(JxcOrderAmountDetail record);

    int insertSelective(JxcOrderAmountDetail record);

    int insertList(@Param("list") List<JxcOrderAmountDetailExt> list);

    int updateByPrimaryKey(JxcOrderAmountDetail record);

    int updateByPrimaryKeySelective(JxcOrderAmountDetail record);

    int updateList(@Param("list") List<JxcOrderAmountDetailExt> list);

    List<JxcOrderAmountDetailExt> selectByEntity(JxcOrderAmountDetailExt record);

    List<JxcOrderAmountDetailExt> selectByPage(@Param("params") Map<String, Object> params, @Param("page") PageBean page);

    List<JxcOrderAmountDetailExt> selectCount1Page(@Param("params") Map<String, Object> params, @Param("page") PageBean page);

    List<JxcOrderAmountDetailExt> selectByParams(@Param("params") Map<String, Object> params);

    double sumValidByOrderSid(@Param("order_sid") String order_sid);

    List<JxcOrderAmountDetailExt> sumValidByOrderList(@Param("order_list") List<String> order_list);

    void update2DeleteByOrderSidList(@Param("params") Map<String, Object> params);

    void update2CancelByOrderSidList(@Param("params") Map<String, Object> params);
}